package com.tedu.review.test;

public abstract class zuoye {
    public abstract void eat();
    public abstract void sleep();
    public static void main(String[] args) {
        zuoye a=new zuoye(){
            public void eat(){
                System.out.println("吃");
            }
            public void sleep(){
                System.out.println("睡");
            }
        };
        a.eat();
        a.sleep();
    }
}
/**
 * 作业：描述抽象类与接口区别？
 * 一、语法定义
 * 1.抽象类使用 abstract 关键字修饰，可以包含抽象方法和非抽象方法，也可以有成员变量和构造方法。
 * 2.接口使用 interface 关键字定义，只能包含抽象方法和常量（默认被 public static final 修饰），不能有普通的成员变量和构造方法。
 * 二、继承实现方式
 * 1.一个类只能继承一个抽象类，使用 extends 关键字。
 * 2.一个类可以实现多个接口，使用 implements 关键字。
 * 三、方法实现程度
 * 1.抽象类中的抽象方法可以有部分方法实现，子类可以继承并扩展这些实现。
 * 2.接口中的所有方法都必须在实现类中被实现，没有任何默认实现。
 * 四、设计目的
 * 1.抽象类通常用于表示具有相似特征和行为的一组对象的共同抽象，强调的是所属关系，是对事物本质的抽象。
 * 2.接口更多地用于定义行为规范或契约，强调的是行为的实现，不同的类可以通过实现同一个接口来表现出相似的行为，实现解耦和多态。
 * 五、灵活性
 * 1.抽象类一旦定义，修改相对较复杂，因为它与子类的继承关系紧密。
 * 2.接口更加灵活，可以随时添加新的方法而不影响已有的实现类（不过实现类需要实现新添加的方法）。
 */